16 research outputs found

    Adaptation of Asynchronously Communicating Software

    Get PDF
    International audienceSoftware adaptation techniques aim at generating new components called adapters, which make a set of services work correctly together by compensating for existing mismatch. Most approaches assume that services interact synchronously using rendez-vous communication. In this paper, we focus on asynchronous communication, where services interact exchanging messages via buffers. We overview a method for automatically generating adapters in such asynchronous environments

    Stability-Based Adaptation of Asynchronously Communicating Software

    Get PDF
    International audienceSoftware Adaptation aims at composing incompatible black-box components or services (peers) whose individual functionality is as required for the new system. Adaptation techniques aim at automatically generating new components called adapters. An adapter works as an orchestrator and makes the involved peers work correctly together by receiving all messages exchanged in the system and by correcting mis-match between them. A challenging issue in this area is to consider that peers are described with (possibly cyclic) behavioural models and interact asynchronously, that is, exchanging messages via message buffers. The synthesis of adapters in this context is difficult because the composition of peers may result in infinite systems. In this paper, we propose new adaptation techniques, which rely on a property of communicating systems called stability. Stability aims at verifying whether a communicating system exhibits the same observational behaviour from a certain buffer bound on. We also provide adapter generation techniques using process algebra encodings and enumerative analysis techniques

    Analyzing and completing middleware designs for enterprise integration using coloured Petri nets

    No full text
    Enterprise Integration Patterns allow us to design a middleware system conceptually before actually implementing it. So far, the in-depth analysis of such a design was not feasible, as these patterns are only described informally. We introduce a translation of each of these patterns into a Coloured Petri Net, which allows to investigate and improve middleware system designs in early stages of development in a number of use cases, including validation and performance analysis using simulation, automatic completion of control-flow in middleware designs, verifying a design for errors and functional properties, and obtaining an implementation in automatic way

    Using Petri nets for modeling enterprise integration patterns

    No full text
    Enterprise Integration Patterns are a collection of widely used patterns for integrating enterprise applications and business processes. These patterns informally represent typical design decisions for connecting enterprise applications. For the set of patterns collected by Hohpe and Woolf in "Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions" we presented for each pattern the conceptual translation into a Coloured Petri Net (CPN). We then show, how to apply these CPN realizations for de¿ning a formal model based on a system speci¿cation using Enterprise Integration Patterns, which allows us to exploit the full power of analysis techniques and range of application for CPN

    Specifying and generating behavioral service adapters based on transformation rules

    No full text
    Behavioral adapters are a way to establish proper interaction between services that have been developed independently. We present a novel approach for specifying such adapters, based on domain-specific transformation rules that reflect the elementary operations that adapters can perform. We show how complex adapters that adhere to these rules can be generated using existing controller generation algorithms. We discuss some example applications, including real-world business processes

    Reducing adapter synthesis to controller synthesis

    No full text
    Service-oriented computing aims to create complex systems by composing less-complex systems, called services. Since services can be developed independently, the integration of services requires an adaptation mechanism for bridging any incompatibilities. Behavioral adapters aim to adjust the communication between some services to be composed in order to establish proper interaction between them. We present a novel approach for specifying such adapters, based on domain-specific transformation rules that reflect the elementary operations that adapters can perform. We also present a novel way to synthesize complex adapters that adhere to these rules, viz., by consistently separating data and control, and by using existing controller-synthesis algorithms. Our approach has been implemented, and we discuss some example applications, including real business processes in WS-BPEL

    Specifying and generating behavioral service adapters based on transformation rules

    No full text
    Behavioral adapters are a way to establish proper interaction between services that have been developed independently. We present a novel approach for specifying such adapters, based on domain-specific transformation rules that reflect the elementary operations that adapters can perform. We show how complex adapters that adhere to these rules can be generated using existing controller generation algorithms. We discuss some example applications, including real-world business processes

    Towards the Automated Synthesis of Data Dependent Service Controllers

    No full text

    Analyzing and completing middleware designs for enterprise integration using coloured Petri nets

    No full text
    Enterprise Integration Patterns allow us to design a middleware system conceptually before actually implementing it. So far, the in-depth analysis of such a design was not feasible, as these patterns are only described informally. We introduce a translation of each of these patterns into a Coloured Petri Net, which allows to investigate and improve middleware system designs in early stages of development in a number of use cases, including validation and performance analysis using simulation, automatic completion of control-flow in middleware designs, verifying a design for errors and functional properties, and obtaining an implementation in automatic way
    corecore